package com.itheima.String;

import java.awt.datatransfer.StringSelection;

public class Stringtest02 {
    public static void main(String[] args) {
        //==号对于引用数据类型的比较 比较的是地址值
        //常量池的复用
        String s1 = "abc";
        String s2 = "abc";
        System.out.println(s1 == s2); //true

        //若"abc"已经在常量池中创建 就只会创建一个对象
        //否则 两个
        //new一次 一个地址值
        String s3 = new String("abc");
        String s4 = new String("abc");
        System.out.println(s3 == s4);//false
    //字符串变量 +常量等同于new
        String s5 = "ab";
        String s6 = s5 + "c";
        String s7 = new String("abc");
        System.out.println(s6 == s7); //false s6是变量+常量等同于new出来的
        System.out.println(s6 == s1);//false

        String s8 = s5 + "c";
        System.out.println(s6 == s8);//false
        //常量优化机制 常量+常量
        String s9 = "ab"+"c";
        String s10 = "a"+"b"+"c";
        System.out.println(s9 == s10);//true
    }
}
